package com.freemypay.test.并发.共享受限资源.不正确的访问资源;

/**
 * synchronized 同步锁
 * @author yesixian
 * @date 2018年5月15日
 */
public class SynchronizedEvenGenerator extends IntGenerator {
	private int currentEvenValue = 0;
	
	/**
	 * synchronized 同步锁
	 * 结果:程序一直运行
	 */
	@Override
	public synchronized int next() {
		++currentEvenValue; //danger point here!
		Thread.yield();
		++currentEvenValue;
		return currentEvenValue;
	}
	
	public static void main(String[] args) {
		EvenChecker.test(new SynchronizedEvenGenerator());
	}

}
